﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Sisco.AplicacionEscritorio.Problema
{
    public partial class RegistroRechazoProblema : Form
    {
        int IdProblema;
        private AccesoDatos.USUARIO usuarioSistema;
        private AccesoDatos.PROBLEMA selectedProblema;
        
        public RegistroRechazoProblema()
        {
            InitializeComponent();
        }

        public RegistroRechazoProblema(int idProblema, AccesoDatos.USUARIO usuariosistema)
            : this()
        {
            IdProblema = idProblema;
            usuarioSistema = usuariosistema;
        }

        private void RegistroRechazoProblema_Load(object sender, EventArgs e)
        {
            if (IdProblema > 0)
            {
                LogicaNegocio.ProblemaBLL problemaBLL = new LogicaNegocio.ProblemaBLL();
                selectedProblema = problemaBLL.GetProblema(IdProblema);
                
                if (selectedProblema != null)
                {
                    txtUsuario.Text = selectedProblema.USUARIO.NOMBRECOMPLETO.Trim();
                    txtEstado.Text = selectedProblema.ESTADO.Trim();
                    txtDescripcionProblema.Text = selectedProblema.DESCRIPCION.Trim();  
                }  
            }          
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnRegistrar_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(txtDescripcionRechazo.Text))
            {
                LogicaNegocio.ProblemaBLL problemaBLL = new LogicaNegocio.ProblemaBLL();
                string nombreUsuariosistema = usuarioSistema.NOMBRECOMPLETO != null ? usuarioSistema.NOMBRECOMPLETO.Trim() : string.Empty;
                problemaBLL.RegistrarRechazo(selectedProblema, txtDescripcionRechazo.Text, nombreUsuariosistema);
                this.Close();
            }
            else
            {
                MessageBox.Show("Ingrese la descripción del rechazo", "Sisco", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
            }
        }
    }
}
